
# Data handling
## Standardization of municipalities and parishes with population data\
## Merge with population data (Ven pop and 2011 census data)

library(tidyverse)
library(readxl)
library(stringi)

ven <- readRDS("ven_elec_2006_2024.rds")

names(ven)

ven <- ven %>%  
  rowwise() %>% 
  mutate(of_p = round((of_c/validos),2),
         op_p = round((op_c/validos),2),
         otro_p = round((otro_c/validos),2),
         Municipio = tolower(Municipio),
         Parroquia = tolower(Parroquia),
  ) 


ven_pop <- read_excel("data/ven_pop_20180502.xlsx", sheet = "adm3") %>% drop_na()

ven_pop <- ven_pop %>% 
  mutate(Parroquia = tolower(ADM3_ES),
         Municipio = tolower(ADM2_ES))


### Checking different municipalities #####


mundif <- setdiff(ven_pop$Municipio, ven$Municipio)

ven_pop_mun <- unique(ven_pop$Municipio)
ven_elec_mun <- unique(ven$Municipio)

sort(mundif)
sort(ven_elec_mun)

ven_pop <- ven_pop %>%
  mutate(
    Municipio = case_when(
      Municipio == "alberto arvelo tor" ~ "alberto arvelo torrealba",
      Municipio == "antonio jose de su" ~ "antonio jose de sucre",
      Municipio == "antonio pinto sali" ~ "antonio pinto salinas",
      Municipio == "antonio romulo cos" ~ "antonio romulo costa",
      Municipio %in% c("autonomo alto orinoco", "autonomo atabapo", "autonomo atures", 
                       "autonomo autana", "autonomo manapiare", "autonomo maroa", 
                       "autonomo rio negro") ~ str_remove(Municipio, "autonomo "),
      Municipio == "caracciolo parra o" ~ "caracciolo parra olmedo",
      Municipio == "cruz salmeron acos" ~ "cruz salmeron acosta",
      Municipio == "diego bautista urb" ~ "diego bautista urbaneja",
      Municipio == "francisco de miran" ~ "francisco de miranda",
      Municipio == "francisco javier p" ~ "francisco javier pulgar",
      Municipio == "francisco linares" ~ "francisco linares alcantara",
      Municipio == "jesus enrique loss" ~ "jesus enrique lossada",
      Municipio == "jesus maria sempru" ~ "jesus maria semprum",
      Municipio == "jose felipe marque" ~ "jose felipe marquez cañizales",
      Municipio == "jose felix rivas" ~ "jose felix ribas",
      Municipio == "jose gregorio mona" ~ "jose gregorio monagas",
      Municipio == "jose rafael reveng" ~ "jose rafael revenga",
      Municipio == "juan vicente campo" ~ "juan vicente campo elias",
      Municipio == "la cañada de urdan" ~ "la cañada de urdaneta",
      Municipio == "machiques de perij" ~ "machiques de perija",
      Municipio == "mario briceño irag" ~ "mario briceño iragorry",
      Municipio == "monseñor jose vice" ~ "monseñor jose vicente de unda",
      Municipio == "obispo ramos de lo" ~ "obispo ramos de lora",
      Municipio == "ocumare de la cost" ~ "ocumare de la costa de oro",
      Municipio == "pao de san juan ba" ~ "pao de san juan bautista",
      Municipio == "peninsula de macan" ~ "peninsula de macanao",
      Municipio == "samuel dario maldo" ~ "samuel dario maldonado",
      Municipio == "san genaro de boco" ~ "san genaro de boconoito",
      Municipio == "san geronimo de gu" ~ "san geronimo de guayabal",
      Municipio == "san jose de guarib" ~ "san jose de guaribe",
      Municipio == "san juan de capist" ~ "san juan de capistrano",
      Municipio == "san rafael de carv" ~ "san rafael de carvajal",
      Municipio == "san rafael de onot" ~ "san rafael de onoto",
      Municipio == "santa maria de ipi" ~ "santa maria de ipire",
      Municipio == "tulio febres corde" ~ "tulio febres cordero",
      Municipio == "fernando de peñalv" ~ "peñalver",
      Municipio == "francisco del carm" ~ "carvajal",
      Municipio == "las mercedes" ~ "juan jose rondon",
      Municipio == "pedro maria freite" ~ "freites",
      Municipio == "raul leoni" ~ "angostura",
      Municipio == "san jose de guanip" ~ "guanipa",
      Municipio == "sir artur mc grego" ~ "mc gregor",
      Municipio == "juan manuel cajiga" ~ "juan manuel cajigal",
      Municipio == "jose gregorio monagas" ~ "monagas",
      Municipio == "juan antonio sotil" ~ "juan antonio sotillo",
      Municipio == "manuel ezequiel br" ~ "manuel ezequiel bruzual",
      TRUE ~ Municipio  # Keep original values if no match
    )
  )

ven <- ven %>%
  mutate(
    Municipio = case_when(
      Municipio == "monagas" & estado == "GUARICO" ~ "jose tadeo monagas",
      Municipio == "monagas" & estado == "ANZOATEGUI" ~ "jose gregorio monagas",
      Municipio == "sotillo" & estado == "ANZOATEGUI" ~ "juan antonio sotillo",
      Municipio == "roscio" & estado == "GUARICO" ~ "juan german roscio",
      Municipio == "cajigal" & estado == "ANZOATEGUI" ~ "juan manuel cajigal",
      Municipio == "mellado" ~ "julian mellado",
      Municipio == "infante" & estado == "GUARICO" ~ "leonardo infante",
      Municipio == "bruzual" & estado == "ANZOATEGUI" ~ "manuel ezequiel bruzual",
      Municipio == "ezequiel zamora" & estado == "COJEDES" ~ "san carlos",
      TRUE ~ Municipio  # Keep original values if no match
    )
  )

### Checking different precincts #####

ven_pop <- ven_pop %>%
  mutate(Parroquia = str_remove_all(Parroquia, "(?i)seccion capital|capital |^autonomo ") %>% 
           str_trim(side = "left"))

pardiff <- setdiff(ven$Parroquia, ven_pop$Parroquia)

ven_elec_par <- unique(ven$Parroquia)
ven_pop_par <- unique(ven_pop$Parroquia)

sort(ven_elec_par)
sort(ven_pop_par)
sort(pardiff)

with(ven[ven$Municipio=="francisco javier pulgar",],table(Parroquia, estado))

with(ven[ven$Parroquia=="agustin codazzi",],table(Municipio, estado))

with(ven_pop[ven_pop$Municipio=="paez",],table(Parroquia, ADM1_ES))


view(ven_pop %>% filter(Municipio == "francisco de miranda"))

ven_pop <- ven_pop %>%
  mutate(Parroquia = case_when(
    Parroquia == "antolin tovar" ~ "antolin tovar aquino",
    Parroquia == "aragõita" ~ "araguita",
    Parroquia == "arvelo gonzalez" ~ "arevalo gonzalez",
    Parroquia == "ascencion farreras" ~ "ascension farreras",
    Parroquia == "acosta" ~ "san antonio",
    Parroquia == "altagracia de orit" ~ "altagracia de orituco",
    Parroquia == "alto orinoco" ~ "huachamacare",
    Parroquia == "antolin del campo" ~ "la plaza de paraguachi",
    Parroquia == "antonio pinto sali" ~ "sta cruz de mora",
    Parroquia == "antonio romulo cos" ~ "las mesas",
    Parroquia == "aristides bastidas" ~ "san pablo",
    Parroquia == "arzobispo chacon" ~ "canagua",
    Parroquia == "atabapo" ~ "san fernando de atabapo",
    Parroquia == "atures" ~ "luis alberto gomez",
    Parroquia == "autana" ~ "isla de raton",
    Parroquia == "cacique manaure" ~ "yaracal",
    Parroquia == "caracciolo parra o" ~ "tucani",
    Parroquia == "cardenal quintero" ~ "santo domingo",
    Parroquia == "cartanal" ~ "el cartanal",
    Parroquia == "cedeño" ~ "caicara",
    Parroquia == "cheregõe" ~ "cheregue",
    Parroquia == "cinco de julio" ~ "5 de julio",
    Parroquia == "diaz" ~ "san juan bautista",
    Parroquia == "dr. francisco romero lobo" ~ "dr. fco. romero lobo",
    Parroquia == "edmundo barrios" ~ "el tigre",
    Parroquia == "el cumbo" ~ "cumbo",
    Parroquia == "el jagõito" ~ "el jaguito",
    Parroquia == "el morro de puerto santo" ~ "el morro de pto santo",
    Parroquia == "el paujil" ~ "paujil",
    Parroquia == "emilio constantino guerrer" ~ "emilio c. guerrero",
    Parroquia == "estanquez" ~ "estanques",
    Parroquia == "esteller" ~ "piritu",
    Parroquia == "ezequiel zamora" ~ "punta de mata",
    Parroquia == "fernandez feo" ~ "san rafael del piñal",
    Parroquia == "fernando de peñalv" ~ "puerto piritu",
    Parroquia == "florencio  ramirez" ~ "florencio ramirez",
    Parroquia == "francisco aniceto lugo" ~ "aniceto lugo",
    Parroquia == "francisco de miran" & ADM1_ES == "Tachira" ~ "san jose de bolivar",
    Parroquia == "francisco de miran" & ADM1_ES == "Anzoategui" ~ "francisco de miranda",
    Parroquia == "francisco eugenio bustaman" ~ "francisco eugenio b",
    Parroquia == "francisco javier pulgar" ~ "francisco j pulgar",
    Parroquia == "francisco linares" ~ "santa rita",
    Parroquia == "garcia" ~ "capital garcia",
    Parroquia == "garcia de hevia" ~ "la fria",
    Parroquia == "general francisco antonio" ~ "general francisco antonio vasquez",
    Parroquia == "gõigõe" ~ "guigue",
    Parroquia == "gõiria" ~ "guiria",
    Parroquia == "gõiripa" ~ "guiripa",
    Parroquia == "gomez" ~ "santa ana",
    Parroquia == "gran saban" ~ "santa elena de uairen",
    Parroquia == "guasimos" ~ "palmira",
    Parroquia == "guajira" ~ "goajira",
    Parroquia == "hum0caro bajo" ~ "humocaro bajo",
    Parroquia == "jauregui" ~ "la grita",
    Parroquia == "jesus maria semprum" ~ "jesus m semprun",
    Parroquia == "jose angel lamas" ~ "santa cruz",
    Parroquia == "jose gregorio mona" ~ "mapire",
    Parroquia == "jose maria vargas" ~ "el cobre",
    Parroquia == "jose rafael reveng" ~ "el consejo",
    Parroquia == "jose ramon yepes" ~ "jose ramon yepez",
    Parroquia == "juan antonio rodriguez dom" ~ "juan antonio rodriguez dominguez",
    Parroquia == "juan de villegas" ~ "guerrera ana soto",
    Parroquia == "justo briceño" ~ "torondoy",
    Parroquia == "la  pica" ~ "la pica",
    Parroquia == "la alhuacas" ~ "las alhuacas",
    Parroquia == "los cedros" ~ "el cedro",
    Parroquia == "luis beltran prieto figuer" ~ "luis beltran prieto figueroa",
    Parroquia == "manapiare" ~ "san juan de manapiare",
    Parroquia == "maneiro" ~ "pampatar",
    Parroquia == "manuel monge" ~ "yumare",
    Parroquia == "marcano" ~ "juan griego",
    Parroquia == "maria de la concepcion pal" ~ "maria de la concepcion palacios",
    Parroquia == "mario briceño irag" ~ "el limon",
    Parroquia == "mariscal antonio jose de s" ~ "mariscal antonio jose de sucre",
    Parroquia == "mejia" ~ "san antonio del golfo",
    Parroquia == "monseñor jose vice" ~ "chabasquen",
    Parroquia == "monseñor feliciano gonzale" ~ "monseñor feliciano gonzalez",
    Parroquia == "monseñor marcos sergio god" ~ "monseñor marcos sergio godoy",
    Parroquia == "monseñor miguel antonio sa" ~ "monseñor miguel antonio salas",
    Parroquia == "municipio ospino" ~ "ospino",
    Parroquia == "obispo ramos de lo" ~ "santa elena de arenales",
    Parroquia == "ocumare de la cost" ~ "ocumare de la costa",
    Parroquia == "padre noguera" ~ "sta maria de caparo",
    Parroquia == "padre pedro chien" ~ "el palmar",
    Parroquia == "palmasola" ~ "palma sola", 
    Parroquia == "panamericano" ~ "panamericana",
    Parroquia == "pedro maria freite" ~ "cantaura",
    Parroquia == "pedro maria ureña" ~ "ureña",
    Parroquia == "peninsula de macan" ~ "boca del rio",
    Parroquia == "peña" ~ "yaritagua",
    Parroquia == "punceres" ~ "quiriquire",
    Parroquia == "rangel" ~ "mucuchies",
    Parroquia == "rivas davila" ~ "bailadores",
    Parroquia == "roscio" ~ "guasipati",
    Parroquia == "saman de gõere" ~ "saman de guere",
    Parroquia == "samuel dario maldonado" ~ "la tendida",
    Parroquia == "san benardino" ~ "san bernardino",
    Parroquia == "san genaro de boco" ~ "boconoito",
    Parroquia == "san geronimo de gu" ~ "guayabal",
    Parroquia == "san jose de aerocuar" ~ "san jose de areocuar",
    Parroquia == "san jose del sur" ~ "san jose",
    Parroquia == "san juan de los mo" ~ "san juan de los morros",
    Parroquia == "san judas tadeo" ~ "umuquena",
    Parroquia == "sotillo" ~ "barrancas",
    Parroquia == "tulio febres corde" ~ "nueva bolivia",
    Parroquia == "turen" ~ "villa bruzual",
    Parroquia == "zamora" ~ "villa de cura",
    Parroquia == "san jose de guanip" ~ "san jose de guanipa",
    Parroquia == "san rafael de onot" ~ "san rafael de onoto",
    Parroquia == "san rafael de palo alzao" ~ "san rafael de palo alzado",
    Parroquia == "santa  ana" ~ "santa ana",
    Parroquia == "santa maria de ipi" ~ "santa maria de ipire",
    Parroquia == "santa polonia" ~ "santa apolonia",
    Parroquia == "santiago mariño" ~ "turmero",
    Parroquia == "santos marquina" ~ "tabay",
    Parroquia == "santos michelena" ~ "las tejerias",
    Parroquia == "sifontes" ~ "tumeremo",
    Parroquia == "thermo morles" ~ "thermo morales",
    Parroquia == "torbes" ~ "san josecito",
    Parroquia == "union\r\n\r\n" ~ "union",
    Parroquia == "urbana achaguas" ~ "achaguas",
    Parroquia == "uribante" ~ "pregonero",
    Parroquia == "valles del tucutunemo" ~ "valles de tucutunemo",
    Parroquia == "vega de guaramacal" ~ "la vega de guaramacal",
    Parroquia == "veroes" ~ "farriar",
    Parroquia == "viento  fresco" ~ "viento fresco",
    Parroquia == "villa frontado (muelle de" ~ "cariaco",
    Parroquia == "villalba" ~ "san pedro de coche",
    TRUE ~ Parroquia
  ))


ven <- ven %>%
  mutate(Parroquia = case_when(
    Parroquia == "aguedo f. alvarado" ~ "aguedo felipe alvarado",
    Parroquia == "alfredo a larriva" ~ "alfredo arvelo larriva",
    Parroquia == "alfredo pacheco m" ~ "alfredo pacheco miranda",
    Parroquia == "altagracia de la m" ~ "altagracia de la montaña",
    Parroquia == "antonio n briceño" ~ "antonio nicolas briceño",
    Parroquia == "crnel. mariano peraza" ~ "coronel mariano peraza",
    Parroquia == "dominga ortiz p" ~ "dominga ortiz de paez",
    Parroquia == "espinoza los monteros" ~ "espinoza de los monteros",
    Parroquia == "san rafael del pinal" ~ "san rafael del piñal",
    Parroquia == "gabriel picon g." ~ "gabriel picon gonzalez",
    Parroquia == "valle esp santo" ~ "capital garcia",
    Parroquia == "grl/jefe jose l silva" ~ "general en jefe jose laure",
    Parroquia == "gral fco. a vasquez" ~ "general francisco antonio vasquez",
    Parroquia == "idelfonzo vasquez" ~ "idelfonso vasquez",
    Parroquia == "jose g. bastidas" ~ "jose gregorio bastidas",
    Parroquia == "jose g hernandez" ~ "jose gregorio hernandez",
    Parroquia == "juan bautista arismen" ~ "juan bautista arismendi",
    Parroquia == "juan b rodriguez" ~ "juan bautista rodriguez",
    Parroquia == "juan a rodriguez d" ~ "juan antonio rodriguez dominguez",
    Parroquia == "u los guayos" ~ "los guayos",
    Parroquia == "luis b prieto figuero" ~ "luis beltran prieto figueroa",
    Parroquia == "madre ma de san jose" ~ "madre maria de san jose",
    Parroquia == "manuel p fajardo" ~ "manuel palacios fajardo",
    Parroquia == "maria c palacios" ~ "maria de la concepcion palacios",
    Parroquia == "mcl. antonio j de sucre" ~ "mariscal antonio jose de sucre",
    Parroquia == "c.m. maturin" ~ "maturin",
    Parroquia == "san ant del golfo" ~ "san antonio del golfo",
    Parroquia == "mons. argimiro garcia" ~ "monseñor argimiro garcia",
    Parroquia == "m.arturo celestino a" ~ "monseñor arturo celestino",
    Parroquia == "mons feliciano g" ~ "monseñor feliciano gonzalez",
    Parroquia == "mons.marcos sergio g" ~ "monseñor marcos sergio godoy",
    Parroquia == "mons. miguel a salas" ~ "monseñor miguel antonio salas",
    Parroquia == "pte. romulo gallegos" ~ "presidente romulo gallegos",
    Parroquia == "qbda. honda de guache" ~ "quebrada honda de guache",
    Parroquia == "san antonio los altos" ~ "san antonio de los altos",
    Parroquia == "s antonio de yare" ~ "san antonio de yare",
    Parroquia == "san cristobal de t" ~ "san cristobal de torondoy",
    Parroquia == "urb san diego" ~ "san diego",
    Parroquia == "sn diego de cabrutica" ~ "san diego de cabrutica",
    Parroquia == "sn fernando del guapo" ~ "san fernando del guapo",
    Parroquia == "san fco de macaira" ~ "san francisco de macaira",
    Parroquia == "san fco. de tiznados" ~ "san francisco de tiznados",
    Parroquia == "san fco de yare" ~ "san francisco de yare",
    Parroquia == "san juan guanaguanare" ~ "san juan de guanaguanare",
    Parroquia == "san juan galdonas" ~ "san juan de las galdonas",
    Parroquia == "s lorenzo de tiznados" ~ "san lorenzo de tiznados",
    Parroquia == "san rafael de alzazar" ~ "san rafael de alcazar",
    Parroquia == "sn rafael de atamaica" ~ "san rafael de atamaica",
    Parroquia == "san rafael palo alzado" ~ "san rafael de palo alzado",
    Parroquia == "sta.cruz de bucaral" ~ "santa cruz de bucaral",
    Parroquia == "sta elena de arenales" ~ "santa elena de arenales",
    Parroquia == "sta maria del horcon" ~ "santa maria del horcon",
    Parroquia == "sta rita de manapire" ~ "santa rita de manapire",
    Parroquia == "sta teresa del tuy" ~ "santa teresa del tuy",
    Parroquia == "u tocuyito" ~ "tocuyito",
    Parroquia == "uvencio a velasquez" ~ "uvencio antonio velasquez",
    Parroquia == "valle guanape" ~ "valle de guanape",
    Parroquia == "san joaquín" ~ "san joaquin",
    TRUE ~ Parroquia
  ))

ven <- ven %>% mutate(COD_EDO = case_when(
  estado == "AMAZONAS" ~ "22",
  estado == "ANZOATEGUI" ~ "2",
  estado == "APURE" ~ "3",
  estado == "ARAGUA" ~ "4",
  estado == "BARINAS" ~ "5",
  estado == "BOLIVAR" ~ "6",
  estado == "CARABOBO" ~ "7",
  estado == "COJEDES" ~ "8",
  estado == "DELTA AMACURO" ~ "23",
  estado == "DTTO. CAPITAL" ~ "1",
  estado == "FALCON" ~ "9",
  estado == "GUARICO" ~ "10",
  estado == "LA GUAIRA" ~ "24",
  estado == "LARA" ~ "11",
  estado == "MERIDA" ~ "12",
  estado == "MIRANDA" ~ "13",
  estado == "MONAGAS" ~ "14",
  estado == "NUEVA ESPARTA" ~ "15",
  estado == "PORTUGUESA" ~ "16",
  estado == "SUCRE" ~ "17",
  estado == "TACHIRA" ~ "18",
  estado == "TRUJILLO" ~ "19",
  estado == "YARACUY" ~ "20",
  estado == "ZULIA" ~ "21",
  TRUE ~ COD_EDO # Keep existing values
))


ven <- ven %>% 
  group_by(Municipio, estado) %>% 
  mutate(COD_MUN = first(na.omit(COD_MUN))) %>% 
  ungroup()

summary(is.na(ven))

write.csv(ven, "ven_elec_2006_2024_clean.csv", row.names = F)
saveRDS(ven, "ven_elec_2006_2024_clean.rds")

###### Merge Ven pop #####

names(ven_pop)

table(ven$estado)
table(ven_pop$estado)

ven_pop_merge <- ven_pop %>% 
  mutate(
    estado = str_to_upper(ADM1_ES), # Convert to uppercase
    estado = case_when(
      estado == "DISTRITO FEDERAL" ~ "DTTO. CAPITAL",
      estado == "VARGAS" ~ "LA GUAIRA", 
      TRUE ~ estado # Keep other values unchanged
    ),
    Parroquia = stri_trans_general(Parroquia, "Latin-ASCII"),
  ) %>% 
  distinct(estado, Municipio, Parroquia, .keep_all = TRUE) %>% 
  unite(par_mun_edo, estado, Municipio, Parroquia, remove = T) %>% 
  select(par_mun_edo, POB_1990, PROY_2005, PROY_2020)


ven_elec_pop <- ven %>% 
  unite(par_mun_edo, estado, Municipio, Parroquia, remove = F) %>% 
  left_join(., ven_pop_merge, by = "par_mun_edo")


write.csv(ven_elec_pop, "ven_elec_2006_2024_pop.csv", row.names = F)
saveRDS(ven_elec_pop, "ven_elec_2006_2024_pop.rds")

### Merge census data ####

ven_elec_pop <- readRDS("ven_elec_2006_2024_pop.rds")

census11 <- read_csv("data/Censo_Ven_2011/Censo_2011_pob_mun_cleaned.csv") %>% 
  mutate(Parroquia = tolower(Parroquia)) %>% drop_na(Población)

pop_par_diff <- setdiff(census11$Parroquia, ven_elec_pop$Parroquia)
ven_elec_par <- unique(ven_elec_pop$Parroquia)

with(ven_elec_pop[ven_elec_pop$Parroquia=="paujil",],table(Parroquia, estado))

view(ven %>% filter(Municipio == "anaco"))

with(census11[census11$Parroquia=="el paujil",],table(Estado))

sort(ven_elec_par)
sort(pop_par_diff)

census11 <- census11 %>% 
  mutate(
    Parroquia = str_replace_all(Parroquia, regex("\\bsección\\b", ignore_case = TRUE), ""), # Remove "sección "
    Parroquia = stri_trans_general(Parroquia, "Latin-ASCII"), # Remove accents and special characters
  Parroquia = str_squish(Parroquia),
  Parroquia = case_when(
    Parroquia == "acosta" ~ "san antonio",
    Parroquia == "altagracia de la montana" ~ "altagracia de la montaña",
    Parroquia == "angostura" ~ "ciudad piar",
    Parroquia == "antolin tovar" ~ "antolin tovar aquino",
    Parroquia == "antonio nicolas briceno" ~ "antonio nicolas briceño",
    Parroquia == "antonio pinto salinas" ~ "sta cruz de mora",
    Parroquia == "arzobispo chacon" ~ "canagua",
    Parroquia == "cana de azucar" ~ "caña de azucar",
    Parroquia == "cano delgadito" ~ "caño delgadito",
    Parroquia == "cano el tigre" ~ "caño el tigre",
    Parroquia == "caracciolo parra olmedo" ~ "tucani",
    Parroquia == "cardenal quintero" ~ "santo domingo",
    Parroquia == "castaneda" ~ "castañeda",
    Parroquia == "cedeno" ~ "caicara",
    Parroquia == "cinco de julio" ~ "5 de julio",
    Parroquia == "diaz" ~ "san juan bautista",
    Parroquia == "diego bautista urbaneja" ~ "lecherias",
    Parroquia == "domingo pena" ~ "domingo peña",
    Parroquia == "don emeterio ochoa" ~ "emeterio ochoa",
    Parroquia == "dr. francisco romero lobo" ~ "dr. fco. romero lobo",
    Parroquia == "edmundo barrios" ~ "el tigre",
    Parroquia == "el bano" ~ "el baño",
    Parroquia == "el tigrito" ~ "san jose de guanipa",
    Parroquia == "esteller" ~ "piritu",
    Parroquia == "ezequiel zamora" ~ "punta de mata",
    Parroquia == "fernandez feo" ~ "san rafael del piñal",
    Parroquia == "fernandez pena" ~ "fernandez peña",
    Parroquia == "fernando de penalver" ~ "puerto piritu",
    Parroquia == "fila de mariches" ~ "filas de mariches",
    Parroquia == "francisco del carmen carvajal" ~ "valle de guanape",
    Parroquia == "francisco javier pulgar" ~ "francisco j pulgar",
    Parroquia == "francisco linares alcantara" ~ "santa rita",
    Parroquia == "garcia" ~ "capital garcia",
    Parroquia == "garcia de hevia" ~ "la fria",
    Parroquia == "gomez" ~ "santa ana",
    Parroquia == "gran sabana" ~ "santa elena de uairen",
    Parroquia == "guajira" ~ "goajira",
    Parroquia == "ignacio briceno" ~ "ignacio briceño",
    Parroquia == "jauregui" ~ "la grita",
    Parroquia == "jose antonio chaves" ~ NA_character_,
    Parroquia == "jose gregorio monagas" ~ "mapire",
    Parroquia == "jose ignacio pumar" ~ "jose ignacio del pumar",
    Parroquia == "jose ramon yepes" ~ "jose ramon yepez",
    Parroquia == "juan de villegas" ~ "guerrera ana soto",
    Parroquia == "juan manuel cajigal" ~ "onoto",
    Parroquia == "juan pablo penaloza" ~ "juan pablo peñaloza",
    Parroquia == "juan vicente bolivar y ponte" ~ "juan vicente bolivar",
    Parroquia == "julio cesar salas" ~ "arapuey",
    Parroquia == "justo briceno" ~ "torondoy",
    Parroquia == "la colonia tovar" ~ "colonia tovar",
    Parroquia == "la pena" ~ "la peña",
    Parroquia == "las penitas" ~ "las peñitas",
    Parroquia == "los cedros" ~ "el cedro",
    Parroquia == "maneiro" ~ "pampatar",
    Parroquia == "manuel ezequiel bruzual" ~ "clarines",
    Parroquia == "manuel palacio fajardo" ~ "manuel palacios fajardo",
    Parroquia == "marcano" ~ "juan griego",
    Parroquia == "marcelino briceno" ~ "marcelino briceño",
    Parroquia == "maria de la concepcion palacios blanco" ~ "maria de la concepcion palacios",
    Parroquia == "marino" ~ "mariño",
    Parroquia == "mario briceno iragorry" ~ "el limon",
    Parroquia == "miguel pena" ~ "miguel peña",
    Parroquia == "monsenor jose vicente de unda" ~ "chabasquen",
    Parroquia = str_detect(Parroquia, "monsenor") ~ str_replace(Parroquia, "monsenor", "monseñor"),
      Parroquia == "montana verde" ~ "montaña verde",
      Parroquia == "no tiene parroquia (agua blanca)" ~ "agua blanca",
      Parroquia == "no tiene parroquia (tabay)" ~ "tabay",
      Parroquia == "obispo ramos de lora" ~ "santa elena de arenales",
      Parroquia == "palacios fajardo" ~ "palacio fajardo",
    Parroquia == "palmasola" ~ "palma sola",
      Parroquia == "panamericano" ~ "panamericana",
      Parroquia == "parhuena" ~ "parhueña",
      Parroquia == "pedro briceno mendez" ~ "pedro briceño mendez",
      Parroquia == "pedro maria freites" ~ "cantaura",
      Parroquia == "pedro maria urena" ~ "ureña",
      Parroquia == "pena" ~ "yaritagua",
      Parroquia == "pena blanca" ~ "peña blanca",
      Parroquia == "penalver" ~ "peñalver",
      Parroquia == "peninsula de macanao" ~ "boca del rio",
      Parroquia == "pinango" ~ "piñango",
      Parroquia == "punceres" ~ "quiriquire",
      Parroquia == "rafael mara baralt" ~ "rafael maria baralt",
      Parroquia == "rangel" ~ "mucuchies",
      Parroquia == "rivas davila" ~ "bailadores",
    Parroquia == "roscio" ~ "guasipati",
      Parroquia == "samuel dario maldonado" ~ "la tendida",
      Parroquia == "san francisco de tiznado" ~ "san francisco de tiznados",
      Parroquia == "san genaro de boconoito" ~ "boconoito",
      Parroquia == "san geronimo de guayabal" ~ "guayabal",
    Parroquia == "san jose de aerocuar" ~ "san jose de areocuar",
      Parroquia == "san jose de la montana" ~ "san jose de la montaña",
      Parroquia == "san jose de tiznado" ~ "san jose de tiznados",
      Parroquia == "san jose del sur" ~ "san jose",
      Parroquia == "san juan de capistrano" ~ "boca de uchire",
      Parroquia == "san lorenzo de tiznado" ~ "san lorenzo de tiznados",
    Parroquia == "san rafael del pinal" ~ "san rafael del piñal",
      Parroquia == "santiago marino" ~ "turmero",
    Parroquia == "santa ana" & Estado == "TACHIRA" ~ "santa ana del tachira",
      Parroquia == "santos michelena" ~ "las tejerias",
      Parroquia == "sifontes" ~ "tumeremo",
      Parroquia == "sir arthur mc gregor" ~ "el chaparro",
      Parroquia == "sotillo" ~ "barrancas",
      Parroquia == "thermo morles" ~ "thermo morales",
      Parroquia == "tubores" ~ "punta de piedras",
      Parroquia == "tulio febres cordero" ~ "nueva bolivia",
      Parroquia == "tuname" ~ "tuñame",
      Parroquia == "turen" ~ "villa bruzual",
    Parroquia == "urena" ~ "ureña",
      Parroquia == "uribante" ~ "pregonero",
      Parroquia == "vega de guaramacal" ~ "la vega de guaramacal",
      Parroquia == "veroes" ~ "farriar",
      Parroquia == "villalba" ~ "san pedro de coche",
      Parroquia == "zamora" ~ "villa de cura",
      TRUE ~ Parroquia # Keep other values unchanged
    )
  )  %>% filter(!Parroquia == "NA") %>% 
  unite(par_edo, Estado, Parroquia, remove = F)


ven_elec_pop <- ven_elec_pop %>%
  mutate(
    Parroquia = case_when(
      Parroquia == "general en jefe jose laure" ~ "general en jefe jose laurencio silva",
      Parroquia == "aniceto lugo" ~ "francisco aniceto lugo",
      Parroquia == "francisco eugenio b" ~ "francisco eugenio bustamante",
      Parroquia == "el morro de pto santo" ~ "el morro de puerto santo",
      Parroquia == "emilio c. guerrero" ~ "emilio constantino guerrero",
      Parroquia == "jesus m semprun" ~ "jesus maria semprun",
      Parroquia =="monseñor arturo celestino" ~  "monseñor arturo celestino alvarez",
      Parroquia == "paujil" ~ "el paujil",
      Parroquia == "sta. ana  del tachira" ~ "santa ana del tachira",
      Parroquia == "sta maria de caparo" ~ "santa maria de caparo",
      Parroquia == "simón rodríguez" ~ "simon rodriguez",
      Parroquia == "simón bolívar" ~ "simon bolivar",
      Parroquia == "ramon i mendez" ~ "ramon ignacio mendez",
      TRUE ~ Parroquia # Keep other values unchanged
    ),
    estado = case_when(
      estado == "DTTO. CAPITAL" ~ "DISTRITO CAPITAL", 
      TRUE ~ estado # Keep other values unchanged
    )
  ) 

mun_par_edo <- ven_elec_pop %>% 
  select(estado, Municipio, Parroquia) %>% distinct() %>% 
  unite(par_edo, estado, Parroquia, remove = F)

census_merge <- census11 %>% 
  mutate(
    Parroquia = case_when(
      par_edo == "ANZOATEGUI_aragua" ~ "aragua de barcelona",
      par_edo == "ANZOATEGUI_francisco de miranda" ~ "pariaguan",
      par_edo == "ANZOATEGUI_independencia" ~ "soledad",
      par_edo == "ANZOATEGUI_libertad" ~ "san mateo",
      par_edo == "ARAGUA_libertador" ~ "palo negro",
      par_edo == "ARAGUA_sucre" ~ "cagua",
      par_edo == "ARAGUA_urdaneta" ~ "barbacoas",
      par_edo == "BOLIVAR_caicara" ~ "caicara del orinoco",
      par_edo == "BOLIVAR_piar" ~ "upata",
      par_edo == "BOLIVAR_sucre" ~ "maripa",
      par_edo == "CARABOBO_independencia" ~ "u independencia",
      par_edo == "LARA_concepcion" ~ "la concepcion",
      par_edo == "MERIDA_caracciolo parra perez" ~ "caracciolo parra p",
      par_edo == "MERIDA_miranda" ~ "timotes",
      par_edo == "MERIDA_sucre" ~ "lagunillas",
      par_edo == "MONAGAS_libertador" ~ "temblador",
      par_edo == "MONAGAS_piar" ~ "aragua",
      par_edo == "PORTUGUESA_paez" ~ "acarigua",
      par_edo == "PORTUGUESA_santa rosalia" ~ "el playon",
      par_edo == "PORTUGUESA_sucre" ~ "biscucuy",
      par_edo == "TACHIRA_ayacucho" ~ "colon",
      par_edo == "TACHIRA_bolivar" ~ "san ant del tachira",
      par_edo == "TACHIRA_cardenas" & Población == 97.356 ~ "tariba",
      par_edo == "TACHIRA_independencia" ~ "capacho nuevo",
      par_edo == "TACHIRA_junin" ~ "rubio",
      par_edo == "TACHIRA_libertad" ~ "capacho viejo",
      par_edo == "TACHIRA_libertador" ~ "abejales",
      par_edo == "TACHIRA_panamericana" ~ "coloncito",
      par_edo == "TACHIRA_san juan bautista" ~ "sn juan bautista",
      par_edo == "TACHIRA_sucre" ~ "queniquea",
      par_edo == "YARACUY_bruzual" ~ "chivacoa",
      par_edo == "ZULIA_andres bello" ~ "andres bello (km 48)",
      TRUE ~ Parroquia  # Keep existing values if no changes needed
    )) %>% 
  unite(par_edo, Estado, Parroquia, remove = T)


census_mun <- census_merge %>% 
  left_join(.,mun_par_edo, by = "par_edo") %>% 
  mutate(
    Municipio = case_when(
      Parroquia == "ramon ignacio mendez" & Población == 4.209 & Municipio == "barinas" ~ NA_character_,
      Parroquia == "ramon ignacio mendez" & Población == 90.464 & Municipio == "ezequiel zamora" ~ NA_character_,
      Parroquia == "dalla costa" & Población == 72.821 & Municipio != "sifontes" ~ NA_character_,
      Parroquia == "dalla costa" & Población == 11.189 & Municipio != "caroni" ~ NA_character_,
      Parroquia == "santa ana" & Población == 15.315 & Municipio != "carirubana" ~ NA_character_,
      Parroquia == "santa ana" & Población == 22.697 & Municipio != "miranda" ~ NA_character_,
      Parroquia == "zazarida" & Población == 5.457 & Municipio != "buchivacoa" ~ NA_character_,
      Parroquia == "zazarida" & Población == 1.188 & Municipio != "zamora" ~ NA_character_,
      Parroquia == "san miguel" & Población == 3.443 & Municipio != "jimenez" ~ NA_character_,
      Parroquia == "san miguel" & Población == 13.276 & Municipio != "urdaneta" ~ NA_character_,
      Parroquia == "el llano" & Población == 8.231 & Municipio == "tovar" ~ NA_character_,
      Parroquia == "el llano" & Población == "16.280" & Municipio == "libertador" ~ NA_character_,
      Parroquia == "cardenas" & Población == 97.356 & Municipio != "cardenas" ~ NA_character_,
      Parroquia == "cardenas" & Población == 3.273 & Municipio != "uribante" ~ NA_character_,
      Parroquia == "arnoldo gabaldon" & Población == 2.597 & Municipio != "candelaria" ~ NA_character_,
      Parroquia == "arnoldo gabaldon" & Población == 1.108 & Municipio != "juan vicente campo elias" ~ NA_character_,
      Parroquia == "la concepcion" & Población == 5.409 & Municipio != "carache" ~ NA_character_,
      Parroquia == "la concepcion" & Población == 5.434 & Municipio != "pampanito" ~ NA_character_,
      Parroquia == "san jose" & Población == 4.361 & Municipio != "bocono" ~ NA_character_,
      Parroquia == "san jose" & Población == 4.171 & Municipio != "candelaria" ~ NA_character_,
      Parroquia == "san jose" & Población == 14.578 & Municipio != "jesus enrique lossada" ~ NA_character_,
      Parroquia == "san jose" & Población == 18.772 & Municipio != "miranda" ~ NA_character_,
      Parroquia == "chiquinquira" & Población == 14.724 & Municipio != "la cañada de urdaneta" ~ NA_character_,
      Parroquia == "chiquinquira" & Población == 55.364 & Municipio != "maracaibo" ~ NA_character_,
      Parroquia == "libertad" & Población == 52.732 & Municipio != "lagunillas" ~ NA_character_,
      Parroquia == "libertad" & Población == 78.115 & Municipio != "machiques de perija" ~ NA_character_,
      Parroquia == "rafael urdaneta" & Población == 5.493 & Municipio != "simon bolivar" ~ NA_character_,
      Parroquia == "rafael urdaneta" & Población == 11.178 & Municipio != "valmore rodriguez" ~ NA_character_,
      TRUE ~ Municipio  # Keep existing values if correct
    ),
    par_edo = paste(estado, Parroquia, sep = "_"),
    par_mun_edo = paste(estado, Municipio, Parroquia, sep = "_")) %>% 
  drop_na(Municipio) %>% 
  select(-par_edo) %>%  
  unite(par_mun_edo, estado, Municipio, Parroquia, remove = T)
  
view(census_mun %>% filter(par_mun_edo == "MERIDA_tovar_el llano"))

sort(census_mun$par_mun_edo[duplicated(census_mun$par_mun_edo)])

ven_elec_pop_2 <- ven_elec_pop %>% 
  select(-par_mun_edo) %>% 
  unite(par_mun_edo, estado, Municipio, Parroquia, remove = F) %>% 
  left_join(., census_mun, by = "par_mun_edo")

write.csv(ven_elec_pop_2, "ven_elec_2006_2024_pop_census.csv", row.names = F)
saveRDS(ven_elec_pop_2, "ven_elec_2006_2024_pop_census.rds")


### Final edit #####

cod_edo_mun_igvsb <- read.csv("data/Censo_Ven_2011/codigos_edo_mun_igvsb.csv") %>% 
  select(mun_edo, cod_mun) %>% distinct() %>% 
  mutate(
    cod_mun = case_when(
      mun_edo == "CARABOBO_valencia" & cod_mun == "15" ~ NA,
      mun_edo == "BARINAS_pedraza" & cod_mun == "13" ~ NA,
      TRUE ~ cod_mun
    )
  ) %>% drop_na()


ven <- readRDS("ven_elec_2006_2024_pop_census.rds")

code_nom_centros <- read.csv("data/code_nom_centros.csv", colClasses = "character")

ven <- ven %>% 
  left_join(.,code_nom_centros) %>% 
  rename(
    municipio = Municipio,
    parroquia = Parroquia,
    cod_edo = COD_EDO,
    cod_mun = COD_MUN,
    cod_par = COD_PAR
  ) %>% 
  mutate(
    pob_2011 = as.numeric(str_replace_all(Población, "[\\.\\s]", "")),  # Remove dots and spaces
    pob_proy_2020 = as.numeric(str_replace_all(PROY_2020, "[\\.\\s]", "")),
    turnout = round(((validos+nulos)/rep_c)*100,2),
    of_p = round((of_c/validos)*100,2),
    op_p = round((op_c/validos)*100,2),
    otro_p = round((otro_c/validos)*100,2),
    municipio = case_when(
      estado == "AMAZONAS" ~ paste("autonomo", municipio),
      TRUE ~ municipio
    )) %>% 
  select(-cod_mun) %>% 
  mutate(
    mun_edo = paste(estado, municipio, sep = "_")
  ) %>% 
  left_join(., cod_edo_mun_igvsb) %>% 
  mutate(
    cod_edo = str_pad(cod_edo, width  = 2, pad = "0"),
    cod_mun = str_pad(cod_mun, width = 2, pad = "0"),
    cod_par = str_pad(cod_par, width = 2, pad = "0"),
    cod_centro = str_pad(centro, width = 9, pad = "0"),
    mesa = str_pad(mesa, width = 2, pad = "0"),
    totales_c = validos+nulos
  ) %>% 
  select(-POB_1990, -PROY_2005, -PROY_2020, -Población, -par_mun_edo, -mun_edo) %>% 
  relocate(turnout, .before = pob_2011) %>% 
    relocate(cod_mun, .before = municipio) %>% 
  relocate(cod_edo, .before = estado) %>% 
  relocate(totales_c, .after = abst_c) %>% 
  relocate(cod_centro, .after = centro) %>% 
  relocate(nombre_centro, .after = cod_centro)


centros_missing <- ven %>% filter(is.na(nombre_centro))
centros_missing <- unique(centros_missing$centro)

mesa_centro_24 <- read_csv("data/TablaMesaEleccionPresidencial2024.csv") %>% 
  select(-starts_with("..")) %>%
  mutate(centro = as.character(CODIGO_CV)) %>% 
  rename(missing_centros = 'NOMBRE DEL CENTRO DE VOTACION') %>% 
  filter(centro %in% centros_missing) %>% 
  select(centro, missing_centros) %>% distinct()

head(ven$cod_centro)

ven <- ven %>% 
  left_join(., mesa_centro_24) %>% 
  mutate(nombre_centro = coalesce(nombre_centro, missing_centros)) %>% 
  select(-missing_centros)

saveRDS(ven, "ven_elec_2006_2024_final.rds")
write.csv(ven, "ven_elec_2006_2024.csv", row.names = F)

saveRDS(ven, file = "ven_2006_2024.RData")
